package flash.display;

extern class NativeWindow extends flash.events.EventDispatcher {
	var active(default,null) : Bool;
	var alwaysInFront : Bool;
	var bounds : flash.geom.Rectangle;
	var closed(default,null) : Bool;
	var displayState(default,null) : NativeWindowDisplayState;
	var height : Float;
	var maxSize : flash.geom.Point;
	var maximizable(default,null) : Bool;
	var menu : NativeMenu;
	var minSize : flash.geom.Point;
	var minimizable(default,null) : Bool;
	var owner(default,null) : NativeWindow;
	var renderMode(default,null) : NativeWindowRenderMode;
	var resizable(default,null) : Bool;
	var stage(default,null) : Stage;
	var systemChrome(default,null) : NativeWindowSystemChrome;
	var title : String;
	var transparent(default,null) : Bool;
	var type(default,null) : NativeWindowType;
	var visible : Bool;
	var width : Float;
	var x : Float;
	var y : Float;
	function new(initOptions : NativeWindowInitOptions) : Void;
	function activate() : Void;
	function close() : Void;
	function globalToScreen(globalPoint : flash.geom.Point) : flash.geom.Point;
	function listOwnedWindows() : flash.Vector<NativeWindow>;
	function maximize() : Void;
	function minimize() : Void;
	function notifyUser(type : flash.desktop.NotificationType) : Void;
	function orderInBackOf(window : NativeWindow) : Bool;
	function orderInFrontOf(window : NativeWindow) : Bool;
	function orderToBack() : Bool;
	function orderToFront() : Bool;
	function restore() : Void;
	function startMove() : Bool;
	function startResize(?edgeOrCorner : NativeWindowResize = NativeWindowResize.BOTTOM_RIGHT) : Bool;
	static var isSupported(default,null) : Bool;
	static var supportsMenu(default,null) : Bool;
	static var supportsNotification(default,null) : Bool;
	static var supportsTransparency(default,null) : Bool;
	static var systemMaxSize(default,null) : flash.geom.Point;
	static var systemMinSize(default,null) : flash.geom.Point;
}
